草庐IT

ML 方法

全部标签

javascript - 循环遍历 JavaScript 对象的其他方法?

下面的代码运行良好,但ESLint插件显示警告:“不允许使用‘ForinStatement’”,所以我想将其更改为其他方式以防止出现警告消息:letcount=0;for(constkeyingroups){if(Object.prototype.toString.call(groups[key])==='[objectObject]'){if({}.hasOwnProperty.call(groups[key],'users')){count+=groups[key].users.length;}}} 最佳答案 如果您的目标只是避

javascript - React - 从属于同一个 render() 的另一个组件触发组件方法

我有一个自定义组件Foo,其'bar'我想从外部触发的功能:classFooextendsReact.Component{bar(){...}}我正在渲染Foo连同button其目的是触发Foo.bar():render(){return();}我尝试过的事情:移动里面Foo,然后添加onClick的在Foo's构造函数——onClick的绑定(bind)不起作用——我看到它已附加,但是仍然没有触发onClick.(或者,如果可行,如何正确执行)?不符合我要求的解决方案:我看到一个potentialsolution建议在整个MyComponent中听一次点击,然后执行一些DOM查询以查

javascript - Angular 4 - "wait for operation"的正确方法是什么?

我遇到了一个简单的问题,它有一个hacky解决方案setTimeout(...,0)。看看这个简单的代码:@Component({selector:'my-app',template:`SpanToDetect`,})exportclassApp{Items:Array=newArray();fill(){this.Items=[1,2,3,4,5,6,7,8,9,10]this.analyzeDom();//thishastorunhere}analyzeDom(){alert($("div.mySpan").length)//"0"//BUTifIsetthishackytrick

javascript - 强制javascript始终返回数组的简单方法

我偶然发现了YQLAPI查询用于Twitter的WOEID,但我可以看到输出并不总是在数组中。API返回一个对象,我对返回以下内容的response.query.results的值感兴趣:如果没有结果,则返回null如果只有一个结果,则返回一个对象如果有多个结果,则返回一个数组我希望结果始终是一个数组。我可以通过使用以下代码检查结果来解决此问题:varcount=response.query.count;if(count===0){return[];}elseif(count===1){vararr=[];arr.push(response.query.results);returna

javascript - 选择选项后调用函数的正确方法。 Angular 4

您好,我需要在选择其中一个选项后调用一个函数。哪种方法最好?我正在使用angular4。modo(){//ifmodo1isselecteddosomething.//ifmodo2isselecteddosomething.//ifmodo3isselecteddosomething.}Modo:MODO1MODO2MODO3 最佳答案 您可以像下面这样使用更改事件处理程序,它将选定的值传递给处理程序:MODO1MODO2MODO3modo(value:string){switch(value){case"mod1"://ifmo

javascript - 在 JavaScript 中替换字符串中的一系列字符的最佳方法是什么

我正在努力提高接受XML字符串并在返回字符串之前替换某些字符(编码)的函数的性能。该功能受到冲击,因此尽可能快地运行很重要。通常的情况是没有任何字符存在——所以我想特别优化它。正如您将在示例代码中看到的,要替换的字符串很短,而且相对较少。源字符串通常很短(例如10-20个字符),但也可能更长(例如200个字符左右)。到目前为止,我已经确保正则表达式是预编译的,并且我已经消除了会减慢操作速度的嵌套函数(此时部分毫秒很重要。)varobjXMLToString=newXMLToStringClass();functionXMLToStringClass(){this.tester=/\\3

Javascript - 从对象数组创建数组的好方法

我有一个javascript对象数组:array=[{x:'x1',y:'y1'},{x:'x2',y:'y2'},...{x:'xn',y:'yn'}]我想创建一个只有x值的新数组:['x1','x2',...,'xn']我可以在for循环中轻松做到这一点...:varnewarray=[];for(vari=0;i...但我想知道是否有一种很好的单行方法可以使用jquery甚至常规javascript来做到这一点? 最佳答案 您可以使用map执行此操作:varnewarray=jQuery.map(array,function(

Javascript - 显示和隐藏大量列表项的最快方法

当用户在Googlemap上平移时,当前可见标记的列表会更新。此列表最多包含1000个项目,并且在一次显示或隐藏数百里时速度变慢。不到半秒,却越来越烦人。数组(newLiList)包含现在应该可见的项目。另一个数组(currentLiList)包含以前可见的项目。两个数组都包含li的id作为索引。for(variinnewLiList){if(currentLiList[i]!=true){$("ul#theListli#"+i).show();}}for(variincurrentLiList){if(newLiList[i]!=true){$("ul#theListli#"+i).

asp.net - 加快 Web 服务的自动完成速度并避免过多的方法调用

所以我的jquery自动完成“工作”了,但它有点烦躁,因为每次keydown()触发时我都会调用webservice方法,所以我有很多方法挂起,有时让“自动”工作我必须把它打出来然后退格一点,因为我假设它的返回值有点慢。我已将查询结果限制为8以尽量减少时间。有什么我可以做的让这个更活泼一点吗?如果我不提高它的响应速度,这东西似乎几乎没用。JavaScript$("#clientAutoNames").keydown(function(){$.ajax({type:"POST",url:"WebService.asmx/LoadData",data:"{'input':"+JSON.st

javascript - Mootools 类中的私有(private)方法

我对在Javascript中使用oop比较陌生,我想知道私有(private)方法的最佳实践是什么。现在,我正在使用mootools创建我的类,并通过在私有(private)方法前加上下划线并强制自己不要在类外部调用该方法来模拟私有(private)方法。所以我的课看起来像:varNotifier=newClass({...showMessage:function(message){//publicmethod...},_setElementClass:function(class){//privatemethod...}});这是在JS中处理私有(private)方法的良好/标准方式